package com.lancoo.cvas.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lancoo.cvas.entity.TaskInfo;
import com.lancoo.cvas.pojo.vo.GradeDto;
import com.lancoo.cvas.pojo.vo.MajorDto;
import com.lancoo.cvas.pojo.vo.TaskInput;
import com.lancoo.cvas.pojo.vo.WeekDateVo;

import java.util.List;

/**
 * 排课计划
 *
 * @author liufeng
 * @email 1037383243@qq.com
 * @date 2023-12-04 11:54:00
 */
public interface TaskInfoService extends IService<TaskInfo> {

    /**
     *  获取专业
     * @param taskId
     * @param module
     * @return
     */
    List<MajorDto> getMajorByTaskId(Integer taskId, Integer module);


    /**
     * 获取年级
     * @param taskId
     * @param module
     * @return
     */
    List<GradeDto> getGradeByTaskId(Integer taskId, Integer module);


    /**
     * 根据学校id 学期获取年级信息
     * @param schoolId
     * @param term
     * @return
     */
    List<GradeDto> getGrade(String schoolId,String term);





    /**
     * 创建新学期计划
     * @param taskInput
     * @return
     */
    TaskInfo addTask(TaskInput taskInput) ;



    /**
     * 批量删除任务id
     * @param taskIds
     */
    void removeTaskByIds(List<Integer> taskIds);


    /**
     * @Description: 获取学期周次信息
     * @Author: liufeng
     * @Date: 2023/12/12 16:43
     * @param taskId:
     * @return:
     */
    WeekDateVo countWeek(Integer taskId);


}

